package com.snap.vseries.analyze;

public class AnalyzeFailedException extends Exception {

    public static final int ERROR_CODE_OTHER = 1;//其他错误
    public static final int ERROR_CODE_DATA_NOT_MATCH = 2;//数据文件和本机配置不符 例如：96孔文件放在32孔机器上分析这种
    public static final int ERROR_CODE_DATASET_TOO_SMALL = 3;//数据过少
    public static final int ERROR_CODE_DATASET_HAS_NOT_FIT = 4;//数据尚未拟合，无法计算
    public static final int ERROR_CODE_NO_TEMPLATE = 5;//模板信息缺失
    public static final int ERROR_CODE_NO_SAMPLE = 6;//样本信息缺失
    public static final int ERROR_CODE_EMPTY_EXP = 7;//空实验文件
    public static final int ERROR_CODE_LIGHT_DATA_EMPTY = 8;//荧光数据空
    public static final int ERROR_CODE_LIGHT_DATA_EMPTY2 = 9;//参与实验的孔的荧光数据为空

    public final int errorCode;

    AnalyzeFailedException(int errorCode) {
        this.errorCode = errorCode;
    }

    public static String getDesc(int code) {
        switch (code) {
            case 2:
                return "实验数据与本机不匹配！";
            case 3:
                return "实验数据过少，无法分析。";
            case 5:
                return "模板信息缺失！";
            case 6:
                return "样本信息缺失！";
            case 7:
                return "未能获取到实验数据！";
            case 8:
            case 9:
                return "无荧光数据！";

            default:
                return "未知错误!";
        }
    }
}
